package de.lns.entities.mobs;
/**
 * 
 * @author Jascha
 *
 */
public class Modification {

	public static final int speed = 0;
	public static final int explosion = 1;
	public static final int physical = 2;
	public static final int fire = 3;
	public static final int magical = 4;
	public static final int poison = 5;
	public static final int implosion = 6;
	// speed, armor[7], movementtype
	private double[] modificationrelative = new double[7];
	private double[] modificationflat = new double[7]; //100 is 100% armor penetration or w/e
	private MovementType movementtype;
	/**
	 * 
	 * @param mod The modification type.
	 * @param multiplier The modification amount.
	 */
	public void setflat(int mod, double multiplier) {
		modificationflat[mod] += multiplier;
	}
	/**
	 * 
	 * @param mod The modification type.
	 * @param multiplier The modification amount.
	 */
	public void setrelative(int mod, double multiplier) {
		modificationrelative[mod] += multiplier;
	}
	/**
	 * not used atm.
	 * @param mt the movementtype that should be switched to.
	 */
	public void switchmovementtype(MovementType mt){
		this.movementtype=mt;
	}
	/**
	 * 
	 * @param mod The modification type.
	 * @return The modifier itself.
	 */
	public double getModificationflat(int mod){
		return modificationflat[mod];
	}
	/**
	 * 
	 * @param mod The modification type.
	 * @return The modifier itself.
	 */
	public double getModificationrelative(int mod){
		return modificationrelative[mod];
	}
}
